import java.util.Scanner;
public class RegistreVehicles {
	Scanner t = new Scanner(System.in);
	//Creo una array de vehicles
	Vheicle[] v = new Vheicle[25];
	//creo una variable per a la clase de contador
	public int i=0;
	public void addVehicle(){
		int passatgers;
		int dies;
		int o;
		double PMA;
		String matricula;
		System.out.println("1- Cotxe.\n2- Microbus.\n3- Furgoneta.\n4- Camio.\n");
		o=t.nextInt();
		switch(o){
			case 1:
				//Demanar les dades
				System.out.print("\nEscriu la matricula: ");
				matricula=t.next();
				System.out.print("\nEscriu el numero de passatgers: ");
				passatgers=t.nextInt();
				System.out.print("\nEscriu el numero de dies: ");
				dies=t.nextInt();
				//Crea un Cotxe utilitzant un vehicle
				v[i] =new Cotxe(matricula,passatgers,dies);
				//Incrementa el numero total de vehicles
				i++;
				break;
			case 2:
				System.out.println("1- Amb limit de dies.\n2- Sense limit de dies.\n");
				o=t.nextInt();
				switch(o){
				case 1:
					System.out.print("\nEscriu la matricula: ");
					matricula=t.next();
					System.out.print("\nEscriu el numero de passatgers: ");
					passatgers=t.nextInt();
					System.out.print("\nEscriu el numero de dies: ");
					dies=t.nextInt();
					v[i] =new Microbus(matricula,passatgers,dies);
					i++;
					break;
				case 2:
					System.out.print("\nEscriu la matricula: ");
					matricula=t.next();
					System.out.print("\nEscriu el numero de passatgers: ");
					passatgers=t.nextInt();
					v[i] =new Microbus(matricula,passatgers);
					i++;
					break;
				default:
					System.out.print("\nOpcio incorrecta.");
				}
				break;
			case 3:
				System.out.print("\nEscriu la matricula: ");
				matricula=t.next();
				System.out.print("\nEscriu el PMA: ");
				PMA=t.nextDouble();
				System.out.print("\nEscriu el numero de dies: ");	
				dies=t.nextInt();
				v[i] = new Furgoneta(matricula,PMA,dies);
				i++;
				break;
			case 4:
				System.out.print("\nEscriu la matricula: ");
				matricula=t.next();
				System.out.print("\nEscriu el PMA: ");
				PMA=t.nextDouble();
				System.out.print("\nEscriu el numero de dies: ");	
				dies=t.nextInt();
				v[i] = new Camio(matricula,PMA,dies);
				i++;
				break;
			default:
				System.out.print("\nOpcio incorrecta.");
		}
	}
	
	public void buscaVheicle(){
		double preu;
		System.out.println("Escriu la matricula a buscar\n");
		//Construeixo un vehicle
		Vheicle d=new Vheicle(t.next());
		for(int j=0;j<i;j++){
			if (d.matricula.equals(v[j].matricula)){//Comprova que la matricula sigui igual al vehicle en la seva posicio
				if (v[j] instanceof Cotxe){ //si el vehicle es un Cotxe 
					Cotxe c = (Cotxe) v[j]; //Canvio de Vehicle a cotxe 
					preu=c.preubase+c.preu; //Calcula el preu i despres mostra
					System.out.println("Matricula: "+c.matricula+"\nPassatgers: "+c.passatgers+"\nPreu: "+preu+"\nDies: "+c.dies+"\n");
				}
				if (v[j] instanceof Microbus) {
					Microbus c = (Microbus) v[j];
					preu=c.preubase+c.preu;
					System.out.println("Matricula: "+c.matricula+"\nPassatgers: "+c.passatgers+"\nPreu: "+preu);
					if (c.dies<1) System.out.print("\nDies: "+c.dies); //Mostra dies en cas de que en tingui
				}
				if (v[j] instanceof Furgoneta) {
					Furgoneta c = (Furgoneta) v[j];
					preu=c.preubase+c.preu;
					System.out.println("Matricula: "+c.matricula+"\nPMA: "+c.PMA+"\nPreu: "+preu);
				}
				if (v[j] instanceof Camio) {
					Camio c = (Camio) v[j];
					preu=c.preubase+c.preu;
					System.out.println("Matricula: "+c.matricula+"\nPMA: "+c.PMA+"\nPreu: "+preu);
				}
			}
			System.out.println("\n");	
		}
		
	} 

	public void mostraPreus(){
		double preu;
		for(int j=0;j<i;j++){
				if (v[j] instanceof Cotxe){ //Si en el vehicle es un cotxe
					Cotxe c = (Cotxe) v[j];//Canvia vehicle a cotxe
					preu=c.preubase+c.preu; //Calcula preu
					System.out.println("Matricula: "+c.matricula+"\nPassatgers: "+c.passatgers+"\nPreu: "+preu+"\nDies: "+c.dies+"\n");
				}
				if (v[j] instanceof Microbus) {
					Microbus c = (Microbus) v[j];
					preu=c.preubase+c.preu;
					System.out.println("Matricula: "+c.matricula+"\nPassatgers: "+c.passatgers+"\nPreu: "+preu);
					if (c.dies<1) System.out.print("\nDies: "+c.dies);
				}
				if (v[j] instanceof Furgoneta) {
					Furgoneta c = (Furgoneta) v[j];
					preu=c.preubase+c.preu;
					System.out.println("Matricula: "+c.matricula+"\nPMA: "+c.PMA+"\nPreu: "+preu);
				}
				if (v[j] instanceof Camio) {
					Camio c = (Camio) v[j];
					preu=c.preubase+c.preu;
					System.out.println("Matricula: "+c.matricula+"\nPMA: "+c.PMA+"\nPreu: "+preu);
				}
			}
		System.out.println("\n");
	}
} 

